package com.chapter5.string;

/**
 * 
* @ClassName: BruteForce 
* @Description: 暴力算法 
* 
* 这是一种简单却应用广泛的算法，在txt数量不大的情况下很适用，这也是java的String类中indexOf使用的算法
* 
* 但是，他的时间复杂度为平方级别，所以 应用在大数量的txt文本搜索上会很乏力
* 
* @author minjun
* @date 2015年3月22日 下午11:24:15 
*
 */
public class BruteForce {

	public static int search(String pat,String txt){
		int M=txt.length();
		int N=pat.length();
		for(int i=0;i<M-N+1;i++){
			int j;
			for(j=0;j<N;j++){
				if(pat.charAt(j)!=txt.charAt(i+j)){
					//如果不想等，就将txt的指针往后移动一位
					break;
				}
			}
			if(j==N){
				return i;
			}
		}
		return -1;
	}
}
